home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / CRS / crs54.d81 / sgtool13.arc / VDC.H < prev   
C/C++ Source or Header  |  1993-08-28  |  4KB  |  128 lines

  1. /*
  2. SG C Tools 1.3
  3.  
  4. (C) 1993 Steve Goldsmith
  5. All Rights Reserved
  6.  
  7. Compiled with HI-TECH C 3.09 (CP/M-80).
  8. */
  9.  
  10. #define vdcStatusReg 0xD600   /* vdc status register */
  11. #define vdcDataReg   0xD601   /* vdc data register */
  12.  
  13. #define vdcHzTotal          0 /* vdc internal registers */
  14. #define vdcHzDisp           1
  15. #define vdcHzSyncPos        2
  16. #define vdcVtHzSyncWidth    3
  17. #define vdcVtTotal          4
  18. #define vdcVtTotalAdj       5
  19. #define vdcVtDisp           6
  20. #define vdcVtSyncPos        7
  21. #define vdcIlaceMode        8
  22. #define vdcChTotalVt        9
  23. #define vdcCurStScanLine   10
  24. #define vdcCurEndScanLine  11
  25. #define vdcDspStAddrHi     12
  26. #define vdcDspStAddrLo     13
  27. #define vdcCurPosHi        14
  28. #define vdcCurPosLo        15
  29. #define vdcLightPenVt      16
  30. #define vdcLightPenHz      17
  31. #define vdcUpdAddrHi       18
  32. #define vdcUpdAddrLo       19
  33. #define vdcAttrStAddrHi    20
  34. #define vdcAttrStAddrLo    21
  35. #define vdcChDspHz         22
  36. #define vdcChDspVt         23
  37. #define vdcVtSmScroll      24
  38. #define vdcHzSmScroll      25
  39. #define vdcFgBgColor       26
  40. #define vdcAddrIncPerRow   27
  41. #define vdcChSetStAddr     28
  42. #define vdcUlScanLineCnt   29
  43. #define vdcWordCnt         30
  44. #define vdcCPUData         31
  45. #define vdcBlkCpySrcAddrHi 32
  46. #define vdcBlkCpySrcAddrLo 33
  47. #define vdcDispEnableSt    34
  48. #define vdcDispEnableEnd   35
  49. #define vdcRamRefresh      36
  50.  
  51. #define vdcBlack        0    /* vdc rgb colors */
  52. #define vdcDarkGray     1
  53. #define vdcDarkBlue     2
  54. #define vdcLightBlue    3
  55. #define vdcDarkGreen    4
  56. #define vdcLightGreen   5
  57. #define vdcDarkCyan     6
  58. #define vdcLightCyan    7
  59. #define vdcDarkRed      8
  60. #define vdcLightRed     9
  61. #define vdcDarkPurple  10
  62. #define vdcLightPurple 11
  63. #define vdcDarkYellow  12
  64. #define vdcLightYellow 13
  65. #define vdcMediumGray  14
  66. #define vdcWhite       15
  67.  
  68. #define vdcAltChrSet 0x80    /* vdc text mode attribute bits */
  69. #define vdcRvsVid    0x40
  70. #define vdcUnderline 0x20
  71. #define vdcBlink     0x10
  72. #define vdcRed       0x08
  73. #define vdcGreen     0x04
  74. #define vdcBlue      0x02
  75. #define vdcIntensity 0x01
  76.  
  77. #define vdcCurSolid  0       /* vdc cursor modes used by setcursorvdc() */
  78. #define vdcCurNone   1
  79. #define vdcCurRate16 2
  80. #define vdcCurRate32 3
  81.  
  82. #define vdcMaxBlock      255
  83. #define vdcCharsPerSet   256
  84. #define vdcMaxCharBytes  32
  85.  
  86. extern uchar invdc(uchar RegNum);
  87. extern void outvdc(uchar RegNum, uchar RegVal);
  88. extern void mapvdc(void);
  89. extern void savevdc(void);
  90. extern void restorevdc(void);
  91.  
  92. extern void fillmemvdc(ushort FillMem, ushort FillLen, uchar Filler);
  93. extern void copymemvdc(ushort SMem, ushort DMem, ushort CopyLen);
  94.  
  95. extern uchar * memtobufvdc(ushort VidMem, ushort CopyLen);
  96. extern void buftomemvdc(uchar *BufPtr, ushort VidMem, ushort CopyLen);
  97.  
  98. extern uchar is64kvdc(void);
  99. extern void set64kvdc(void);
  100. extern void attrsoffvdc(void);
  101. extern void attrsonvdc(void);
  102. extern void setcursorvdc(uchar Top, uchar Bottom, uchar Mode);
  103. extern void set80x50textvdc(void);
  104. extern void setcharvdc(ushort CharMem);
  105. extern void setdsppagevdc(ushort DPage, ushort APage);
  106.  
  107. extern void clrscrvdc(uchar Ch);
  108. extern void clrattrvdc(uchar Attr);
  109. extern void filldspvdc(uchar X, uchar Y, uchar CLen, uchar Ch);
  110. extern void fillattrvdc(uchar X, uchar Y, uchar ALen, uchar Attr);
  111. extern void copydspvdc(ushort SDPage, ushort SAPage, ushort DDPage, ushort DAPage);
  112.  
  113. extern void scrollupvdc(uchar X1, uchar Y1, uchar X2, uchar Y2);
  114. extern void scrolldownvdc(uchar X1, uchar Y1, uchar X2, uchar Y2);
  115. extern void clrwinvdc(uchar X1, uchar Y1, uchar X2, uchar Y2, uchar Ch);
  116. extern void clrwinattrvdc(uchar X1, uchar Y1, uchar X2, uchar Y2, uchar Ch);
  117. extern void winvdc(uchar X1, uchar Y1, uchar X2, uchar Y2, uchar Attr, char *Title);
  118.  
  119. extern void printstrvdc(uchar X, uchar Y, uchar Attr, char *TextStr);
  120.  
  121. extern void setbitmapvdc(ushort DispMem, ushort AttrMem, uchar F, uchar B);
  122. extern void clrbitmapvdc(uchar Filler);
  123. extern void setpixvdc(int X, int Y);
  124. extern void linevdc(int X1, int Y1, int X2, int Y2);
  125. extern void printbmvdc(uchar X, uchar Y, uchar Attr, char *TextStr);
  126. extern void circlepointsvdc(int XC, int YC, int X, int Y);
  127. extern void circlevdc(int XC, int YC, int R);
  128.